It takes more than great code
to be a great engineer.

Soft Skills Engineering is a weekly advice podcast for software developers.

The show's hosts are experienced developers who answer your questions about topics like:

  • pay raises
  • hiring and firing developers
  • technical leadership
  • learning new technologies
  • quitting your job
  • getting promoted
  • code review etiquette
  • and much more...

Soft Skills Engineering is made possible through generous donations from listeners. A heart with a striped shadowSupport us on Patreon

A speech bubble

Why should you listen?

Here's what listeners say:

Recent Episodes

Latest Episode

Episode 415: I got a low raise and merging teams

Download

In this episode, Dave and Jamison answer these questions:

  1. Hi guys! I’m a technical Data Analyst in a well established Fortune 500 company, in my job I usually work with databases to build queries and prepare reports for our users. In the past 2 years my team and I had a tremendous impact in the business with several successful key projects, and we received very positive feedback from the management during our yearly review. We are talking about an impressive performance that it’s very unlikely to be repeated again in the future, a mix of luck, great decisions and technical efforts as a team.

    I was expecting a substantial raise but my manager, who have been promoted recently and it’s the first time she’s doing this, told me that the salary caps are defined by our Headquarter’s HQ by looking at the average salaries for our roles. My salary is already high based on these statistics. There is only room for a 0.5% increase, which I approved, because it’s better than nothing, but left me with a bittersweet aftertaste. My manager felt sorry and promised that for the next year she’ll fight for more.

    I love my work and I consider myself already lucky to have this sort of issues. However, this method doesn’t reward outstanding performances and encourages to just “earn that paycheck”, knowing that whatever I’ll do, I’ll earn more or less the same unless I get a huge promotion to manager (which I’m not ready to do). I see this in our company culture.

    How can I bring this topic to the upper management and support my manager to change the system?

  2. I am a manager of a small team of four people. I am about to absorb another team of three. While we all work on the same “application,” we own very different “micro-apps” within that site. Our tech stacks are similar (node, react). The two teams have different product owners under a different reporting structure.

    I would love to merge the two teams. I think a seven person team would be more effective and resilient than two 3-4 person teams. Already with my four person team, we feel it when someone needs a couple days off.

    How could I plan for and execute a plan to merge these two teams? What considerations for the engineers and our product partners should I have?

A smiling speech bubble

Episode 414: Hot-headed PM and leaving without downgrading

Download

In this episode, Dave and Jamison answer these questions:

  1. Cool-headed engineer asks,

    How do you deal with hot-headed project managers? I have a project manager in my team who really likes to criticize me, a project lead. Most recently, I was criticized for asking a dumb question to the users which they already answered a few months ago. They told me that I should check with them for all the questions going forward. (think: “Why did you ask that question?! Don’t you know that they already answered that?! Look at this message here: . Their intent is clear. Please check with me for all questions going forward.")

    It’s not the first time they scolded me either. They tried to pressure me to push the timeline even though I explained why it wouldn’t be possible. They made a false equivalence by comparing it to a similar sounding project that’s completed very fast but, unbeknownst to them, is very different to mine. (think: “Why was that project completed in three month but you need six?! Those engineers are working on the same code too. Please accept that you are not a strong engineer.”)

    I am demoralized after each time they scolded me. It’s my fault to an extent, but I think the criticism is too extreme compared to the mistake. I feel like they just want to let off some heat after their strong discussions and furious meetings with other people. I’m also a frail person and break easily; I want to learn how to handle hot-headed people and extreme criticism better so I can better speak for my team and not acquiesce to all their demands.

  2. Hello! I’m really fortunate in my current company. I have a great team, great workload that’s challenging but doesn’t destroy my work-life balance, and plenty of pay, benefits, and recognition. I feel this comes from having a really small group of proactive devs, and software is the primary source of revenue at this company so engineers are highly valued and appreciated. It really is the perfect place to be in.

    But I’m also really early in my career and I don’t expect or want to stay here forever. I’m coming up on my fifth year, and I’d prefer not to stay for more than 6-7 years because I want to continue diversifying my career. I know I’m leaving for the sake of leaving, but the reasons are sound in my head. All the past companies I’ve worked for have been decent but have been soured by being around 9-5 “That’s not my job” cruising devs, or upper management who say “Customer wants it tomorrow so just write the codes”. I don’t want to risk going back to that. What are some ways I can scope out a company during the interview process to figure out what their real culture is like?

A smiling speech bubble

Episode 413: Is my interview candidate cheating and my product owner is getting WRECKED by the client

Download

In this episode, Dave and Jamison answer these questions:

  1. This is my first time conducting technical interviews (most of which have been virtual), and I had one interview where I had a strong feeling that the candidate was cheating. They breezed through the short problems I gave them, and they were able to explain their reasoning. But during the live coding problem, they sat in silence for five minutes, and when I asked them what they were thinking, they didn’t respond. Then they started cranking out perfect code without explaining anything.

    How do you address cheating in interviews? What if it turns out to be just nerves? I don’t want to assume anything, but I also wouldn’t feel comfortable confronting them about it either.

  2. I work as a team lead for a small group of 4 other devs. Our Product Owner is currently handling the requirements for new features to onboard a new large client. This involves them attending client meetings and generally isolating the development team from client shenanigans which is normally great, but it’s becoming INCREASINGLY obvious that someone on the client team has his number and he’s getting HORRIBLY out-negotiated. This has resulted in a bunch of missing requirements, changing requirements, last minute feature adds, and general confusion. I’m trying to push back, but the leadership team is coming back with “Well we promised…” and my entire team is stressing out. Note that this is AFTER we were already pressured to overcommit on capacity to get these “absolutely necessary” features developed for the client to go live.

    I like my PO, he’s a good guy and normally does good work, what can I do to help him stop from getting his butt kicked in these meetings?

    (Note: the POs are neither above nor below us in the org tree, our closest shared higher-up is the VP and I obviously don’t want to escalate it that far)